package com.regulareport.form.mapper;

import com.regulareport.common.core.domain.entity.HeadSubIndexMap;
import com.regulareport.form.domain.HeadIndexVO;
import com.regulareport.form.domain.ReportHeadSubMapVo;
import com.regulareport.form.domain.rep.HeadSubIndexMapFull;
import com.regulareport.form.domain.rep.SubCellDefinition;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface HeadSubIndexMapMapper {
    void insertHeadSubIndexMaps(@Param("list") List<HeadSubIndexMap> mappingList);

    List<ReportHeadSubMapVo> selectMapListByMapEdition(@Param("mapEditionId") Long mapEditionId);

    List<HeadIndexVO> notMapList(@Param("mapEditionId") Long mapEditionId);

    void deleteByMapEditionId(@Param("mapEditionId") Long aLong);

    List<ReportHeadSubMapVo> selectMapListByMapEditionBySearchType(@Param("mapEditionId") Long mapEditionId, @Param("searchType") int searchType);

    List<HeadSubIndexMapFull> selectFull(@Param("id") Long mapEditionId);

    List<SubCellDefinition> selectSubCell(@Param("id") Long reportId);

    List<SubCellDefinition> selectSubCellFilling(@Param("id") Long reportId);

    List<SubCellDefinition> selectAdjustCellFilling(@Param("id") Long reportId, @Param("list") List<String> coordinateList);
}
